Sharing location information with a recipient

ABSTRACT

Computer program products, methods, systems, apparatus, and computing entities for tracking an item delivery are provided. In one embodiment, an item is associated with a vehicle (e.g., manned or unmanned terrestrial vehicle, nautical vehicle, and/or aerial vehicle) by updating item data in a database. An item tracking session is then generated based on the item data. Upon the determination that session availability trigger has occurred, access to the item tracking session is provided to a user. Data representing an updated location of the delivery vehicle is then used to update the item data to indicate the current location of the item as the updated location of the vehicle.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of U.S. Provisional PatentApplication 62/339,319, filed on May 20, 2016, the contents of which arehereby incorporated by reference.

BACKGROUND

Recipients of shipments/items consistently desire more transparency intracking the location of their shipments/items during the deliveryprocess. Accordingly, improved shipment/item tracking systems andmethods providing shipment/item recipients with greater information/dataregarding the current location of their shipments/items are needed.

BRIEF SUMMARY

In general, embodiments of the present invention provide methods,apparatus, systems, computing devices, computing entities, and/or thelike for sharing location information with a recipient. In accordancewith one example embodiment, a method is provided for tracking deliveryof an item. The method includes associating the item with a vehicle byupdating item data in a database, generating an item tracking sessionbased on the item data identifying a current location of the item,determining a session availability trigger has occurred, and providingaccess to the item tracking session to a user in response todetermination that the session availability trigger has occurred. Themethod also includes receiving data representing an updated location ofthe vehicle, and updating the item data and the item tracking session toindicate the current location of the item is the updated location of thevehicle.

In one example embodiment, the method further includes comparing itemtransit progress against access level criteria, and modifying dataavailable via the tracking session upon determining that one or moreaccess level criteria are satisfied.

In one example embodiment of the method, the item tracking sessionidentifying the current location of the item includes renderable mapdata identifying the current location of the item, and updating the itemtracking session to indicate the current location of the item is thecurrent location of the vehicle further comprises further method steps.The further steps may include determining multiple access views of therenderable map data, wherein the multiple views comprise at least a wideview of the renderable map data associated with a first range oflocations of the vehicle, a moderate view of the renderable map dataassociated with a second range of locations of the vehicle, and a closeview of the renderable map data associated with a third range oflocations of the vehicle. The further steps may also include determiningthat the vehicle is within the second range of locations, providing therenderable map data corresponding to the moderate view of the map to theuser, determining that the vehicle is within the third range oflocations, and providing the renderable map data corresponding to theclose view of the map to the user.

In an example embodiment of the method, the renderable map data furthercomprises an icon representing the location of the item, wherein theicon is a first size on the map representing the location of the vehicleand wherein updating the item tracking session further comprisesadditional method steps. The additional method steps may includedetermining that the vehicle is within the second range of locations,changing the icon to a second size in the renderable map data, whereinthe second size provides a more specific location than the first size,determining that the vehicle is within the third range of locations, andchanging the icon to a third size in the renderable map data, whereinthe third size provides a more specific location than the first size.

In an example embodiment of the method, updating the item trackingsession to indicate the current location of the item is the currentlocation of the vehicle further includes one of: updating the itemtracking session continuously, updating the item tracking session atleast once during a first time period, wherein the first time periodcomprises a range of one minutes to five minutes, or updating the itemtracking session at least once during a second time period, wherein thesecond time period comprises a range of five minutes to fifteen minutes.

In an example embodiment of the method, providing access to the itemtracking session to the user includes generating a map access link,wherein selection of the map access link by the user provides renderablemap data to the user, generating a map available notification, whereinthe map available notification comprises the map access link, anddelivering the map available notification to the user.

In an example embodiment of the method, the notification is delivered tothe user using one or more of an email, a short message service, or anotification in a user delivery profile.

In an example embodiment of the method, determining the sessionavailability trigger has occurred includes one or more of: determiningthe item is associated with the vehicle, determining the item is withina delivery time window, or receiving a request to view the item trackingsession from the user.

In an example embodiment, the method further includes receiving atracking completion signal.

In an example embodiment, the method further includes restricting theuser's access to the item tracking session upon receiving a trackingcompletion signal.

In an example embodiment, the method further includes receiving atracking completion signal further includes receiving one or more of: adelivery completed notification, a delivery not completed notification,a tracking error notification, or a tracking time out notification.

In an example embodiment, the method further includes receiving adelivery action request from the user, wherein the delivery actionrequest indicates a desired user change to the item delivery, whereinthe desired user change comprises one or more of a user selection tointercept the vehicle to accept delivery of the item, a user selectionof a new delivery address for the item, a user selection to acceptdelivery of the item at a retail location, or a user selection to acceptdelivery of the item at an access point. The method may also includedetermining that the delivery action request has been granted,determining that the desired user change to the item delivery has beencompleted, and updating the item tracking session according to completeddesired change.

In an example embodiment of the method, the vehicle is selected from agroup consisting of a manned terrestrial vehicle, an unmannedterrestrial vehicle, and an unmanned aerial vehicle.

In another example embodiment, an apparatus is provided for trackingdelivery of an item. The apparatus includes at least one processor andat least one memory including program code, the at least one memory andthe program code configured to, with the processor, cause the apparatusto associate the item with a vehicle by updating item data in adatabase, generate an item tracking session based on the item dataidentifying a current location of the item, determine a sessionavailability trigger has occurred, provide access to the item trackingsession to a user in response to determination that the sessionavailability trigger has occurred, receive data representing an updatedlocation of the vehicle, and update the item data and the item trackingsession to indicate the current location of the item is the updatedlocation of the vehicle.

The at least one memory and the program code may be further configuredto, with the processor, cause the apparatus to compare item transitprogress against access level criteria and modify data available via thetracking session upon determining that one or more access level criteriaare satisfied.

In an example embodiment of the apparatus, the item tracking sessionidentifying the current location of the item comprises renderable mapdata identifying the current location of the item. The at least onememory and the program code may be further configured to, with theprocessor, cause the apparatus to determine multiple access views of therenderable map data, wherein the multiple views comprise at least a wideview of the renderable map data associated with a first range oflocations of the vehicle, a moderate view of the renderable map dataassociated with a second range of locations of the vehicle, and a closeview of the renderable map data associated with a third range oflocations of the vehicle. The at least one memory and the program codemay be further configured to, with the processor, cause the apparatus todetermine that the vehicle is within the second range of locations,provide the renderable map data corresponding to the moderate view ofthe map to the user, determine that the vehicle is within the thirdrange of locations, and provide the renderable map data corresponding tothe close view of the map to the user.

In an example embodiment of the apparatus, the renderable map datafurther comprises an icon representing the location of the item, whereinthe icon is a first size on the map representing the location of thevehicle. The at least one memory and the program code may be furtherconfigured to, with the processor, cause the apparatus to determine thatthe vehicle is within the second range of locations, change the icon toa second size in the renderable map data, wherein the second sizeprovides a more specific location than the first size, determine thatthe vehicle is within the third range of locations, and change the iconto a third size in the renderable map data, wherein the third sizeprovides a more specific location than the first size.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toupdate the item tracking session continuously, update the item trackingsession at least once during a first time period, wherein the first timeperiod comprises a range of one minutes to five minutes, or update theitem tracking session at least once during a second time period, whereinthe second time period comprises a range of five minutes to fifteenminutes.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus togenerate a map access link, wherein selection of the map access link bythe user provides renderable map data to the user, generate a mapavailable notification, wherein the map available notification comprisesthe map access link, and deliver the map available notification to theuser.

In an example embodiment of the apparatus, the notification is deliveredto the user using one or more of an email, a short message service, or anotification in a user delivery profile.

In an example embodiment, to determine session availability trigger hasoccurred, the at least one memory and the program code may be furtherconfigured to, with the processor, cause the apparatus to determine theitem is associated with the vehicle, determine the item is within adelivery time window, or receive a request to view the item trackingsession from the user.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toreceive a tracking completion signal. The at least one memory and theprogram code may be further configured to, with the processor, cause theapparatus to restrict the user's access to the item tracking sessionupon receiving a tracking completion signal.

In an example embodiment, in order to receive a tracking completionsignal, the at least one memory and the program code may be furtherconfigured to, with the processor, cause the apparatus to receive one ormore of: a delivery completed notification, a delivery not completednotification, a tracking error notification, or a tracking time outnotification.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toreceive a delivery action request from the user, wherein the deliveryaction request indicates a desired user change to the item delivery. Thedesired user change may comprise one or more of: a user selection tointercept the vehicle to accept delivery of the item, a user selectionof a new delivery address for the item, a user selection to acceptdelivery of the item at a retail location, or a user selection to acceptdelivery of the item at an access point. The at least one memory and theprogram code may be further configured to, with the processor, cause theapparatus to determine that the delivery action request has beengranted, determine that the desired user change to the item delivery hasbeen completed, and update the item tracking session according tocompleted desired change.

In an example embodiment of the apparatus, the vehicle is selected froma group consisting of a manned terrestrial vehicle, an unmannedterrestrial vehicle, and an unmanned aerial vehicle.

In accordance with another example embodiment, a non-transitorycomputer-readable storage medium for tracking an item delivery isprovided. In an example embodiment, the non-transitory computer-readablestorage medium storing program code instructions that, when executed,cause a computing device to associate the item with a vehicle byupdating item data in a database, generate an item tracking sessionbased on the item data identifying a current location of the item,determine a session availability trigger has occurred, provide access tothe item tracking session to a user in response to determination thatthe session availability trigger has occurred, receive data representingan updated location of the vehicle, and update the item data and theitem tracking session to indicate the current location of the item isthe updated location of the vehicle.

In accordance with another example embodiment, a method is provided forusing a user device to track movement of an item during delivery. Themethod includes receiving, from a server, access to an item trackingsession regarding the item, gathering, from the server, datarepresenting a current location of the item, rendering the gathered datato illustrate the current location of the item, receiving a deliveryaction request from the user, wherein the delivery action requestindicates a desired user change to the item delivery, and transmittingthe delivery action request to the server.

In one embodiment, the gathered data comprises map data identifying thecurrent location of the item.

In an example embodiment, rendering the gathered data comprisesdisplaying, on a user interface, a map with a wide view of the locationof the item.

In an example embodiment, the method further includes receiving a firstdata update comprising map data, rendering the first data update toprovide a map with a moderate view of the location of the item,receiving a second data update comprising map data, and rendering thesecond data update to provide a map with a close view of the location ofthe item.

In an example embodiment, the map data comprises a first icon, the firstdata update comprises a second icon, and the second data updatecomprises a third icon. In this regard, rendering the gathered data maycomprise rendering the first icon in a first size on the map with thefirst view of the location of the item, rendering the second icon in asecond size on the map with the second view of the location of the item,wherein the second size provides a more specific location than the firstsize, and rendering the third icon in a third size on the map with thethird view of the location of the item, wherein the third size providesa more specific location than the second size.

In an example embodiment, the steps of gathering the data representingthe current location and rendering the received data include gatheringthe data representing the current location of the item and rendering thereceived data continuously, gathering the data representing the currentlocation of the item and rendering the received data at least onceduring a first time period, wherein the first time period comprises arange of one minutes to five minutes, or gathering the data representingthe current location of the item and rendering the received data atleast once during a second time period, wherein the second time periodcomprises a range of five minutes to fifteen minutes.

In an example embodiment, receiving access to the item tracking sessioncomprises receiving a map available notification from the server,wherein the map available notification comprises a map access link, andwherein the method further comprises receiving a user selection of themap access link, and wherein receiving the data representing the currentlocation of the item from the server comprises receiving map data inresponse to the user selection of the map access link from the server.

In an example embodiment of the method, the map available notificationcomprises an email, a short message service (SMS) transmission, or anotification within a user delivery profile.

In an example embodiment of the method, the desired user changecomprises one or more of: a request to intercept the delivery vehicle toaccept delivery of the item, an indication of a new delivery address forthe item, a request to accept delivery of the item at a retail location,or a request to accept delivery of the item at an access point.

In an example embodiment, the method also includes receiving, from theserver, an indication that the delivery action request has been granted.

In accordance with another example embodiment, an apparatus is providedto track movement of an item during delivery. The apparatus includes atleast one processor and at least one memory including program code, theat least one memory and the program code configured to, with theprocessor, cause the apparatus to receive, from a server, access to anitem tracking session regarding the item, gather, from the server, datarepresenting a current location of the item, render the gathered data toillustrate the current location of the item, receive a delivery actionrequest from the user, wherein the delivery action request indicates adesired user change to the item delivery, and transmit the deliveryaction request to the server.

In an example embodiment of the apparatus, the gathered data comprisesmap data identifying the current location of the item.

In an example embodiment, in order to render the gathered data, the atleast one memory and the program code may be further configured to, withthe processor, cause the apparatus to render the map data to provide amap with a wide view of the location of the item.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toreceive a first data update comprising map data, render the first dataupdate to provide a map with a moderate view of the location of theitem, receive a second data update comprising map data, and render thesecond data update to provide a map with a close view of the location ofthe item.

In an example embodiment of the apparatus, the map data comprises afirst icon, the first data update comprises a second icon, and thesecond data update comprises a third icon, wherein the first icon isrendered in a first size on the map with a wide view of the location ofthe item, wherein the second icon is rendered in a second size on themap with a moderate view of the location of the item, wherein the secondsize provides a more specific location than the first size, and whereinthe third icon is rendered in a third size on the map with a close viewof the location of the item, wherein the third size provides a morespecific location than the second size.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toreceive data representing the location of the item and rendering thereceived data continuously, receive data representing the location ofthe item and rendering the received data at least once during a firsttime period, wherein the first time period comprises a range of oneminutes to five minutes, or receive data representing the location ofthe item and rendering the received data at least once during a secondtime period, wherein the second time period comprises a range of fiveminutes to fifteen minutes.

In an example embodiment, in order to receive access to the itemtracking session, the at least one memory and the program code may befurther configured to, with the processor, cause the apparatus toreceive a map available notification from the server, wherein the mapavailable notification comprises a map access link, wherein the at leastone memory and the program code may be further configured to, with theprocessor, cause the apparatus to receive a user selection of the mapaccess link, and receive map data in response to the user selection ofthe map access link from the server.

In an example embodiment of the apparatus, the map availablenotification is received as one or more of an email, a short messageservice, or a notification in a user delivery profile.

In an example embodiment of the apparatus, the desired user changecomprises one or more of: a user selection to intercept the deliveryvehicle to accept delivery of the item, a user selection of a newdelivery address for the item, a user selection to accept delivery ofthe item at a retail location, or a user selection to accept delivery ofthe item at an access point.

In an example embodiment, the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus toreceive an indication that the delivery action request has been grantedfrom the server.

In accordance with another example embodiment, a non-transitorycomputer-readable storage medium for tracking an item delivery isprovided. In an example embodiment, the non-transitory computer-readablestorage medium storing program code instructions that, when executed,cause a computing device to receive, from a server, access to an itemtracking session regarding the item, gather, from the server, datarepresenting a current location of the item, render the gathered data toillustrate the current location of the item, receive a delivery actionrequest from the user, wherein the delivery action request indicates adesired user change to the item delivery, and transmit the deliveryaction request to the server.

The above summary is provided merely for purposes of summarizing someexample embodiments to provide a basic understanding of some aspects ofthe invention. Accordingly, it will be appreciated that theabove-described embodiments are merely examples and should not beconstrued to narrow the scope or spirit of the invention in any way. Itwill be appreciated that the scope of the invention encompasses manypotential embodiments in addition to those here summarized, some ofwhich will be further described below.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Reference will now be made to the accompanying drawings, which are notnecessarily drawn to scale, and wherein:

FIG. 1A is a diagram of a system that can be used to practice variousembodiments of the present invention.

FIG. 1B is a diagram of another system that can be used to practicevarious embodiments of the present invention.

FIG. 2 is a diagram of an information/data collection device that may beused in association with certain embodiments of the present invention.

FIG. 3 is a schematic of a carrier computing entity in accordance withcertain embodiments of the present invention.

FIG. 4 is a schematic of a mobile computing entity in accordance withcertain embodiments of the present invention.

FIG. 5A is a flowchart illustrating operations and processes that can beused in performing various embodiments of the present invention.

FIGS. 5B-5G are flowcharts illustrating additional operations andprocesses that can be used in performing various embodiments of thepresent invention.

FIG. 6A is an example graphical user interface mockup illustrating firstaccess level information/data that may be presented to a user, inaccordance with various embodiments of the present invention.

FIG. 6B is an example graphical user interface mockup illustratinggeneric access level information/data that may be presented to a user,in accordance with various embodiments of the present invention.

FIG. 7A is an example graphical user interface mockup illustratingsecond access level information/data that may be presented to a user, inaccordance with various embodiments of the present invention.

FIG. 7B is another example graphical user interface mockup illustratinggeneric access level information/data that may be presented to a user,in accordance with various embodiments of the present invention.

FIGS. 8A, 8B, 8C, and 8D are example graphical user interface mockupsillustrating information/data that may be presented to a user showing achanging location-region, in accordance with various embodiments of thepresent invention.

FIG. 9A is an example graphical user interface mockup illustrating thirdaccess level information/data that may be presented to a user, inaccordance with various embodiments of the present invention.

FIGS. 9B and 9C are additional example graphical user interface mockupsillustrating generic access level information/data that may be presentedto a user, in accordance with various embodiments of the presentinvention.

FIG. 10 is an example graphical user interface mockup illustratinginformation/data on an example display, in accordance with variousembodiments of the present invention.

FIG. 11A is a flowchart illustrating operations and processes that canbe used in performing various embodiments of the present invention.

FIGS. 11B-11C are flowcharts illustrating additional operations andprocesses that can be used in performing various embodiments of thepresent invention.

DETAILED DESCRIPTION

The present invention will now be described more fully hereinafter withreference to the accompanying drawings, in which some, but not allembodiments of the invention are shown. Indeed, the invention may beembodied in many different forms and should not be construed as limitedto the embodiments set forth herein. Rather, these embodiments areprovided so that this disclosure will satisfy applicable legalrequirements. Like numbers refer to like elements throughout.

Various embodiments are configured to provide shipment/item recipientswith detailed information/data regarding the current location of ashipment/item in transit prior to final delivery of the shipment/item tothe recipient (or a particular destination location associated with therecipient). In particular, various embodiments provide detailed locationinformation/data for each shipment/item based on determined currentlocations of vehicles carrying each shipment/item. For example, thelocation information/data for a shipment/item may be determined based onthe location of a vehicle, as discussed in U.S. patent application Ser.No. 14/556,972, filed Dec. 1, 2014, the entirety of which isincorporated herein by reference.

Accordingly, for shipment/item transportation strategies in whichshipments/items are loaded onto various types of vehicles fortransportation and delivery to their respective intended destinations,the location of each shipment/item loaded onto a particular vehicle maybe estimated based on a known location of the vehicle itself, asdetermined by location sensors in the vehicle or in a mobile computingdevice carried by a vehicle operator. Various embodiments thus utilizethe location of the containing vehicle (and/or the location of themobile computing entity 105 carried by the vehicle operator) as thelocation of a particular shipment/item, and may provide access to atracking session, such as through a graphical user interface to ashipment/item recipient indicating the location of the shipment/item ona map as it is transported to its respective final destination location.

Once the shipment/item is delivered to its final destination location,the location of the vehicle is no longer an acceptable proxy for thelocation of the shipment/item. Accordingly, various embodimentsdisassociate the shipment/item from the vehicle, and/or otherwiseterminate sharing of the location of the vehicle with the recipient.However, the system may continue to share the location of the vehiclewith other shipment/item recipients whose shipments/items have not yetbeen removed from the vehicle and delivered to their respectivedestination locations. Accordingly, various embodiments providesufficient information/data via the generated user interface to enable ashipment/item recipient to determine where his/her shipment/item islocated, and to determine when his/her shipment/item has been delivered,without providing superfluous information/data regarding the location ofa vehicle that had previously delivered the recipient's shipment/item,once the shipment/item has been delivered.

Moreover, various embodiments limit the amount of information/dataavailable to an intended recipient of a shipment/item prior to deliveryof the shipment/item as well. For example, because the precise locationof a shipment/item scheduled to be delivered several hours in the futuremay be more information than the recipient needs to plan his/her dayaround an expected shipment/item delivery, various embodiments limit theprecision of location information/data provided to the user based on theitem's progress toward final delivery of the shipment/item. For example,when a delivery vehicle containing the shipment/item initially leaves ahub location (e.g., operated by a shipment/item carrier/deliveryentity), the user interface provided to a shipment/item recipient mayprovide only information/data indicative of an estimated delivery windowfor the shipment/item (e.g., delivery expected between 2:00-4:00 PM). Asthe delivery vehicle progresses along an assigned delivery route, andgets closer in time and/or distance to delivering the shipment/item inquestion, the user interface provided to the user may be updated toprovide additional information/data indicative of an estimated locationof the delivery vehicle. For example, the estimated location may cover alarge region of a map (e.g., may be shown as a polygon over some regionof the map) in which the vehicle is currently located. Thus, althoughproviding more granular information/data than an expected delivery time,some embodiments of the system nevertheless do not enable an intendedshipment/item recipient to track the entire delivery route of thevehicle as it progresses from the hub to the final delivery destinationfor the shipment/item. Example screenshot/mockup of a generic accesslevel providing location information/data and item progress is shown inFIGS. 9B and 9C.

Finally, once the vehicle enters a defined time, distance, and/or numberof deliveries prior to delivering the shipment/item in question, thegraphical user interface available to the shipment/item recipient isupdated to provide a precise location of the vehicle carrying theshipment/item, and/or an expected delivery path between the vehiclecurrent location and the destination location for the shipment/item. Theestimated location of the shipment/item may update as the vehicle 100moves, until the shipment/item is ultimately delivered to thedestination location.

After delivery, the shipment/item recipient's access to theshipment/item tracking graphical user interface may be terminated, sothat the shipment/item recipient is no longer enabled to monitor thelocation of the vehicle.

Accordingly, various embodiments enable shipment/item recipients to plantheir day around an expected shipment/item delivery, while in someembodiments preventing shipment/item recipients from tracking the exactmovements of a delivery vehicle 100 over an entire delivery route. As anexpected shipment/item delivery becomes nearer in time, the level ofprecision of location information/data provided to the shipment/itemrecipient increases, so that the shipment/item recipient is givensufficient notice of the expected time of delivery.

From the recipient's perspective, the recipient may begin his/her daywith an understanding that a shipment/item is likely to be deliveredbetween 4:00 PM-8:00 M. At the beginning of the day, there is still agreat deal of uncertainty regarding the exact time the shipment/item isto be delivered, and so this relatively wide estimated delivery windowgives the shipment/item recipient an idea of when he/she should expectdelivery of the shipment/item. As the day progresses and the expecteddelivery time nears, the amount of uncertainty in the expected deliverytime may decrease, and so the recipient may be given more preciseinformation/data about the current location of the vehicle and/or anarrowed estimated delivery window (e.g., 5:00 PM-7:00 PM). If therecipient wants to be home to accept delivery, the recipient may thenwatch the estimated location of the vehicle to make sure he/she plans tobe home before the delivery vehicle gets close to the destinationlocation. Finally, when delivery is imminent, the precise location ofthe delivery vehicle may be provided to the recipient. Thus, therecipient may watch the progress of the vehicle to be sure he/she isavailable to accept delivery when the vehicle approaches the deliverylocation.

I. Computer Program Products, Methods, and Computing Entities

Embodiments of the present invention may be implemented in various ways,including as computer program products that comprise articles ofmanufacture. A computer program product may include a non-transitorycomputer-readable storage medium storing applications, programs, programmodules, scripts, source code, program code, object code, byte code,compiled code, interpreted code, machine code, executable instructions,and/or the like (also referred to herein as executable instructions,instructions for execution, program code, and/or similar terms usedherein interchangeably). Such non-transitory computer-readable storagemedia include all computer-readable media (including volatile andnon-volatile media).

In one embodiment, a non-volatile computer-readable storage medium mayinclude a floppy disk, flexible disk, hard disk, solid-state storage(SSS) (e.g., a solid state drive (SSD), solid state card (SSC), solidstate module (SSM)), enterprise flash drive, magnetic tape, or any othernon-transitory magnetic medium, and/or the like. A non-volatilecomputer-readable storage medium may also include a punch card, papertape, optical mark sheet (or any other physical medium with patterns ofholes or other optically recognizable indicia), compact disc read onlymemory (CD-ROM), compact disc-rewritable (CD-RW), digital versatile disc(DVD), Blu-ray disc (BD), any other non-transitory optical medium,and/or the like. Such a non-volatile computer-readable storage mediummay also include read-only memory (ROM), programmable read-only memory(PROM), erasable programmable read-only memory (EPROM), electricallyerasable programmable read-only memory (EEPROM), flash memory (e.g.,Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC),secure digital (SD) memory cards, SmartMedia cards, CompactFlash (CF)cards, Memory Sticks, and/or the like. Further, a non-volatilecomputer-readable storage medium may also include conductive-bridgingrandom access memory (CBRAM), phase-change random access memory (PRAM),ferroelectric random-access memory (FeRAM), non-volatile random-accessmemory (NVRAM), magnetoresistive random-access memory (MRAM), resistiverandom-access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory(SONOS), floating junction gate random access memory (FJG RAM),Millipede memory, racetrack memory, and/or the like.

In one embodiment, a volatile computer-readable storage medium mayinclude random access memory (RAM), dynamic random access memory (DRAM),static random access memory (SRAM), fast page mode dynamic random accessmemory (FPM DRAM), extended data-out dynamic random access memory (EDODRAM), synchronous dynamic random access memory (SDRAM), double datarate synchronous dynamic random access memory (DDR SDRAM), double datarate type two synchronous dynamic random access memory (DDR2 SDRAM),double data rate type three synchronous dynamic random access memory(DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), TwinTransistor RAM (TTRAM), Thyristor RAM (T-RAM), Zero-capacitor (Z-RAM),Rambus in-line memory module (RIMM), dual in-line memory module (DIMM),single in-line memory module (SIMM), video random access memory (VRAM),cache memory (including various levels), flash memory, register memory,and/or the like. It will be appreciated that where embodiments aredescribed to use a computer-readable storage medium, other types ofcomputer-readable storage media may be substituted for or used inaddition to the computer-readable storage media described above.

As should be appreciated, various embodiments of the present inventionmay also be implemented as methods, apparatus, systems, computingdevices, computing entities, and/or the like. As such, embodiments ofthe present invention may take the form of an apparatus, system,computing device, computing entity, and/or the like executinginstructions stored on a computer-readable storage medium to performcertain steps or operations. However, embodiments of the presentinvention may also take the form of an entirely hardware embodimentperforming certain steps or operations.

Embodiments of the present invention are described below with referenceto block diagrams and flowchart illustrations. Thus, it should beunderstood that each block of the block diagrams and flowchartillustrations may be implemented in the form of a computer programproduct, an entirely hardware embodiment, a combination of hardware andcomputer program products, and/or apparatus, systems, computing devices,computing entities, and/or the like carrying out instructions,operations, steps, and similar words used interchangeably (e.g., theexecutable instructions, instructions for execution, program code,and/or the like) on a computer-readable storage medium for execution.For example, retrieval, loading, and execution of code may be performedsequentially such that one instruction is retrieved, loaded, andexecuted at a time. In some exemplary embodiments, retrieval, loading,and/or execution may be performed in parallel such that multipleinstructions are retrieved, loaded, and/or executed together. Thus, suchembodiments can produce specifically-configured machines performing thesteps or operations specified in the block diagrams and flowchartillustrations. Accordingly, the block diagrams and flowchartillustrations support various combinations of embodiments for performingthe specified instructions, operations, or steps.

II. Exemplary System Architecture

FIG. 1 provides an illustration of a system 1 that can be used inconjunction with various embodiments of the present invention. As shownin FIG. 1, the system 1 may include one or more vehicles 100, one ormore mobile computing entities 105, one or more carrier computingentities 110, one or more Global Positioning System (GPS) satellites115, one or more user computing entities 117, one or more locationsensors 120, one or more telematics sensors 125, one or moreinformation/data collection devices 130, one or more networks 135, oneor more shipments/items, and/or the like. Each of the components of thesystem 1 may be in electronic communication with, for example, oneanother over the same or different wireless or wired networks including,for example, a wired or wireless Personal Area Network (PAN), Local AreaNetwork (LAN), Metropolitan Area Network (MAN), Wide Area Network (WAN),or the like. Additionally, while FIG. 1 illustrates certain systementities as separate, standalone entities, the various embodiments arenot limited to this particular architecture.

FIG. 1B shows enhanced parcel delivery system 2 according to oneembodiment. In the embodiment of FIG. 1B, the parcel delivery system 2may be incorporated as part of system 1 and comprise a primary deliveryvehicle 150 and a plurality of unmanned aerial vehicles (UAVs) 155configured to deliver shipment/item 160 from the vehicle 150. Accordingto various embodiments, the UAVs 155 are configured to be dispatchedfrom the vehicle 150, deliver a shipment/item 160 to various deliverylocations, and return to the vehicle 150.

In the illustrated embodiment of FIG. 1B, the primary delivery vehicle150 is a delivery truck configured to be manually or autonomouslydriven. In some embodiments, the delivery vehicle 150 defines aninterior package cabin for storing a plurality of parcels to bedelivered by the UAVs 155. The delivery vehicle's roof panel includesUAV support mechanisms 165 configured to enable the UAVs 155 to takeofffrom, and land on, the delivery vehicle 150. In some examples, thedelivery vehicle 150 is configured such that shipment/items stored inthe delivery vehicle's interior package cabin can be secured to one ofthe UAVs 155 in an automated fashion, such that the UAV to which aparticular parcel is secured can then take off from the roof panel ofthe vehicle 150, deliver the parcel to a delivery location, and returnto the vehicle 150 for landing on the roof panel. In this way, thedelivery vehicle 150 functions as a mobile hub for UAV-based parceldeliveries. Alternatively, in some embodiments, the UAVs 155 may takeoff from, and may return to and land on a building or other structure,such as a warehouse.

a. Exemplary Vehicle 100

In various embodiments, the term vehicle 100 is used generically. Forexample, a vehicle 100 may be a manned or an unmanned terrestrial,aerial, or nautical vehicle—such as a tractor, truck, car, motorcycle,moped, Segway, bicycle, golf cart, hand truck, cart, trailer, tractorand trailer combination, van, flatbed truck, vehicle 100, primarydelivery vehicle 150, UAV 155, drone, airplane, helicopter, boat, barge,and/or any other form of object for moving or transporting people and/oritems (e.g., one or more packages, parcels, bags, containers, loads,crates, items banded together, vehicle 100 parts, pallets, drums, thelike, and/or similar words used herein interchangeably). In oneembodiment, each vehicle 100 may be associated with a unique vehicleidentifier (such as a vehicle ID) that uniquely identifies the vehicle100. The unique vehicle ID (e.g., trailer ID, tractor ID, vehicle ID,and/or the like) may include characters, such as numbers, letters,symbols, and/or the like. For example, an alphanumeric vehicle ID (e.g.,“AS445”) may be associated with each vehicle 100. In another embodiment,the unique vehicle ID may be the license plate, registration number, orother identifying information/data assigned to the vehicle 100.

FIG. 1A shows one or more computing entities, devices, and/or similarwords used herein interchangeably that are associated with the vehicle100, such as an information/data collection device 130 or othercomputing entities. In general, the terms computing entity, entity,device, system, and/or similar words used herein interchangeably mayrefer to, for example, one or more computers, computing entities,desktop computers, mobile phones, tablets, phablets, notebooks, laptops,distributed systems, servers or server networks, blades, gateways,switches, processing devices, processing entities, set-top boxes,relays, routers, network access points, base stations, the like, and/orany combination of devices or entities adapted to perform the functions,operations, and/or processes described herein.

FIG. 2 provides a block diagram of an exemplary information/datacollection device 130 that may be attached, affixed, disposed upon,integrated into, or part of a vehicle 100, primary delivery vehicle 150,or a UAV 155. The information/data collection device 130 may collecttelematics information/data (including location information/data) andtransmit/send the information/data to the mobile computing entity 105,the carrier computing entity 110, and/or various other computingentities via one of several communication methods.

In one embodiment, the information/data collection device 130 mayinclude, be associated with, or be in wired or wireless communicationwith one or more processors 200 (various exemplary processors aredescribed in greater detail below), one or more location-determiningdevices or one or more location sensors 120 (e.g., Global NavigationSatellite System (GNSS) sensors), one or more telematics sensors 125,one or more real-time clocks 215, a J-Bus protocol architecture, one ormore electronic control modules (ECM) 245, one or more communicationports 230 for receiving telematics information/data from various sensors(e.g., via a CAN-bus), one or more communication ports 205 fortransmitting/sending data, one or more RFID tags/sensors 250, one ormore power sources 220, one or more information/data radios 235 forcommunication with a variety of communication networks, one or morememory modules 210, and one or more programmable logic controllers (PLC)225. It should be noted that many of these components may be located inthe vehicle 100 but external to the information/data collection device130.

In one embodiment, the one or more location sensors 120, modules, orsimilar words used herein interchangeably may be one of severalcomponents in wired or wireless communication with or available to theinformation/data collection device 130. Moreover, the one or morelocation sensors 120 may be compatible with GPS satellites 115, such asLow Earth Orbit (LEO) satellite systems, Department of Defense (DOD)satellite systems, the European Union Galileo positioning systems, theChinese Compass navigation systems, Indian Regional Navigationalsatellite systems, and/or the like. This information/data can becollected using a variety of coordinate systems, such as the DecimalDegrees (DD); Degrees, Minutes, Seconds (DMS); Universal TransverseMercator (UTM); Universal Polar Stereographic (UPS) coordinate systems;and/or the like. Alternatively, triangulation may be used in connectionwith a device associated with a particular vehicle 100 and/or thevehicle's operator and with various communication points (e.g., cellulartowers or Wi-Fi access points) positioned at various locationsthroughout a geographic area to monitor the location of the vehicle 100,and/or its operator. The one or more location sensors 120 may be used toreceive latitude, longitude, altitude, heading or direction, geocode,course, position, time, and/or speed information/data (e.g., referred toherein as telematics information/data and further described hereinbelow). The one or more location sensors 120 may also communicate withthe carrier computing entity 110, the information/data collection device130, mobile computing entity 105, and/or similar computing entities.

As indicated, in addition to the one or more location sensors 120, theinformation/data collection device 130 may include and/or be associatedwith one or more telematics sensors 125, modules, and/or similar wordsused herein interchangeably (e.g., vehicle 100 sensors, such as engine,fuel, odometer, hubometer, tire pressure, location, weight, emissions,door, and speed sensors; environmental sensors, such as air qualitysensors and/or temperature sensors; and/or the like).

In one embodiment, the ECM 245 may be one of several components incommunication with and/or available to the information/data collectiondevice 130. The ECM 245, which may be a scalable and subservient deviceto the information/data collection device 130, may have information/dataprocessing capability to decode and store analog and digital inputs fromvehicle 100 systems and sensors. The ECM 245 may further haveinformation/data processing capability to collect and present telematicsinformation/data to the J-Bus (which may allow transmission to theinformation/data collection device 130), and output standard vehicle 100diagnostic codes when received from a vehicle's 100 J-Bus-compatibleon-board controllers 240 and/or sensors.

As indicated, a communication port 230 may be one of several componentsavailable in the information/data collection device 130 (or be in or asa separate computing entity). Embodiments of the communication port 230may include an Infrared information/data Association (IrDA)communication port, an information/data radio, and/or a serial port. Thecommunication port 230 may receive instructions for the information/datacollection device 130. These instructions may be specific to the vehicle100 in which the information/data collection device 130 is installed,specific to the geographic area in which the vehicle 100 will betraveling, specific to the function the vehicle 100 serves within afleet, and/or the like. In one embodiment, the information/data radio235 may be configured to communicate with a wireless wide area network(WWAN), wireless local area network (WLAN), wireless personal areanetwork (WPAN), or any combination thereof. For example, theinformation/data radio 235 may communicate via various wirelessprotocols, such as 802.11, general packet radio service (GPRS),Universal Mobile Telecommunications System (UMTS), Code DivisionMultiple Access 2000 (CDMA2000), CDMA2000 1X (1xRTT), Wideband CodeDivision Multiple Access (WCDMA), Time Division-Synchronous CodeDivision Multiple Access (TD-SCDMA), Long Term Evolution (LTE), EvolvedUniversal Terrestrial Radio Access Network (E-UTRAN), Evolution-DataOptimized (EVDO), High Speed Packet Access (HSPA), High-Speed DownlinkPacket Access (HSDPA), IEEE 802.11 (Wi-Fi), 802.16 (WiMAX), ultrawideband (UWB), infrared (IR) protocols, Bluetooth protocols (includingBluetooth low energy (BLE)), wireless universal serial bus (USB)protocols, and/or any other wireless protocol.

b. Exemplary Carrier Computing Entity

FIG. 3 provides a schematic of a carrier computing entity 110 accordingto one embodiment of the present invention. A carrier may be atraditional carrier, such as United Parcel Service (UPS), FedEx, DHL,courier services, the United States Postal Service (USPS), CanadianPost, freight companies (e.g. truck-load, less-than-truckload, railcarriers, air carriers, ocean carriers, etc.), and/or the like. However,a carrier may also be a nontraditional carrier, such as Coyote, Amazon,Google, Uber, ride-sharing services, crowd-sourcing services, retailers,and/or the like.

In general, the terms computing entity, entity, device, system, and/orsimilar words used herein interchangeably may refer to, for example, oneor more computers, computing entities, desktop computers, mobile phones,tablets, phablets, notebooks, laptops, distributed systems, servers orserver networks, blades, gateways, switches, processing devices,processing entities, set-top boxes, relays, routers, network accesspoints, base stations, the like, and/or any combination of devices orentities adapted to perform the functions, operations, and/or processesdescribed herein. Such functions, operations, and/or processes mayinclude, for example, transmitting, receiving, operating on, processing,displaying, storing, determining, creating/generating, monitoring,evaluating, comparing, and/or similar terms used herein interchangeably.In one embodiment, these functions, operations, and/or processes can beperformed on data, content, information, and/or similar terms usedherein interchangeably.

As indicated, in one embodiment, the carrier computing entity 110 mayalso include one or more communications interfaces 320 for communicatingwith various computing entities, such as by communicating data, content,information, and/or similar terms used herein interchangeably that canbe transmitted, received, operated on, processed, displayed, stored,and/or the like. For instance, the carrier computing entity 110 maycommunicate with vehicles 100, mobile computing entities 105, and/or thelike.

As shown in FIG. 3, in one embodiment, the carrier computing entity 110may include or be in communication with one or more processing elements305 (also referred to as processors, processing circuitry, and/orsimilar terms used herein interchangeably) that communicate with otherelements within the carrier computing entity 110 via a bus, for example.As will be understood, the processing element 305 may be embodied in anumber of different ways. For example, the processing element 305 may beembodied as one or more complex programmable logic devices,microprocessors, multi-core processors, coprocessing entities,application-specific instruction-set processors (ASIPs), and/orcontrollers. Further, the processing element 305 may be embodied as oneor more other processing devices or circuitry. The term circuitry mayrefer to an entirely hardware embodiment or a combination of hardwareand computer program products. Thus, the processing element 305 may beembodied as integrated circuits, application specific integratedcircuits (ASICs), field programmable gate arrays (FPGAs), programmablelogic arrays (PLAs), hardware accelerators, other circuitry, and/or thelike. As will therefore be understood, the processing element 305 may beconfigured for a particular use or configured to execute instructionsstored in volatile or non-volatile media or otherwise accessible to theprocessing element 305. As such, whether configured by hardware orcomputer program products, or by a combination thereof, the processingelement 305 may be capable of performing steps or operations accordingto embodiments of the present invention when configured accordingly.

In one embodiment, the carrier computing entity 110 may further includeor be in communication with non-volatile media (also referred to asnon-volatile storage, memory, memory storage, memory circuitry and/orsimilar terms used herein interchangeably). In one embodiment, thenon-volatile storage or memory may include one or more non-volatilestorage or memory media 310 as described above, such as hard disks, ROM,PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks,CBRAIVI, PRAM, FeRAM, RRAM, SONOS, racetrack memory, and/or the like. Aswill be recognized, the non-volatile storage or memory media may storedatabases, database instances, database management system entities,data, applications, programs, program modules, scripts, source code,object code, byte code, compiled code, interpreted code, machine code,executable instructions, and/or the like. The term database, databaseinstance, database management system entity, and/or similar terms usedherein interchangeably may refer to a structured collection of recordsor information/data that is stored in a computer-readable storagemedium, such as via a relational database, hierarchical database, and/ornetwork database.

In one embodiment, the carrier computing entity 110 may further includeor be in communication with volatile media (also referred to as volatilestorage, memory, memory storage, memory circuitry and/or similar termsused herein interchangeably). In one embodiment, the volatile storage ormemory may also include one or more volatile storage or memory media 315as described above, such as RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM,DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, RIMM, DIMM, SIMM, VRAM, cachememory, register memory, and/or the like. As will be recognized, thevolatile storage or memory media may be used to store at least portionsof the databases, database instances, database management systementities, data, applications, programs, program modules, scripts, sourcecode, object code, byte code, compiled code, interpreted code, machinecode, executable instructions, and/or the like being executed by, forexample, the processing element 305. Thus, the databases, databaseinstances, database management system entities, data, applications,programs, program modules, scripts, source code, object code, byte code,compiled code, interpreted code, machine code, executable instructions,and/or the like may be used to control certain aspects of the operationof the carrier computing entity 110 with the assistance of theprocessing element 305 and operating system.

As indicated, in one embodiment, the carrier computing entity 110 mayalso include one or more communications interfaces 320 for communicatingwith various computing entities, such as by communicating data, content,information, and/or similar terms used herein interchangeably that canbe transmitted, received, operated on, processed, displayed, stored,and/or the like. For instance, the carrier computing entity 110 maycommunicate with computing entities or communication interfaces of thevehicle 100, mobile computing entities 105, and/or the like.

Such communication may be executed using a wired information/datatransmission protocol, such as fiber distributed information/datainterface (FDDI), digital subscriber line (DSL), Ethernet, asynchronoustransfer mode (ATM), frame relay, information/data over cable serviceinterface specification (DOCSIS), or any other wired transmissionprotocol. Similarly, the carrier computing entity 110 may be configuredto communicate via wireless external communication networks using any ofa variety of protocols, such as GPRS, UMTS, CDMA2000, 1xRTT, WCDMA,TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, WiMAX, UWB, IRprotocols, Bluetooth protocols, USB protocols, and/or any other wirelessprotocol. Although not shown, the carrier computing entity 110 mayinclude or be in communication with one or more input elements, such asa keyboard input, a mouse input, a touch screen/display input, audioinput, pointing device input, joystick input, keypad input, and/or thelike. The carrier computing entity 110 may also include or be incommunication with one or more output elements (not shown), such asaudio output, video output, screen/display output, motion output,movement output, and/or the like.

As will be appreciated, one or more of the carrier computing entity's110 components may be located remotely from other carrier computingentity 110 components, such as in a distributed system. Furthermore, oneor more of the components may be combined and additional componentsperforming functions described herein may be included in the carriercomputing entity 110. Thus, the carrier computing entity 110 can beadapted to accommodate a variety of needs and circumstances.

c. Exemplary Mobile Computing Entity

FIG. 4A provides an illustrative schematic representative of a mobilecomputing entity 105 that can be used in conjunction with embodiments ofthe present invention. In one embodiment, the mobile computing entities105 may include one or more components that are functionally similar tothose of the carrier computing entity 110 and/or as described below. Aswill be recognized, mobile computing entities 105 can be operated byvarious parties, including operators of vehicles 100. As shown in FIG.4, a mobile computing entity 105 can include an antenna 412, atransmitter 404 (e.g., radio), a receiver 406 (e.g., radio), and aprocessing element 408 that provides signals to and receives signalsfrom the transmitter 404 and receiver 406, respectively.

The signals provided to and received from the transmitter 404 and thereceiver 406, respectively, may include signaling information/data inaccordance with an air interface standard of applicable wireless systemsto communicate with various entities, such as vehicles 100, carriercomputing entities 110, and/or the like. In this regard, the mobilecomputing entity 105 may be capable of operating with one or more airinterface standards, communication protocols, modulation types, andaccess types. More particularly, the mobile computing entity 105 mayoperate in accordance with any of a number of wireless communicationstandards and protocols. In a particular embodiment, the mobilecomputing entity 105 may operate in accordance with multiple wirelesscommunication standards and protocols, such as GPRS, UMTS, CDMA2000,1xRTT, WCDMA, TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, WiMAX,UWB, IR protocols, Bluetooth protocols, USB protocols, and/or any otherwireless protocol.

Via these communication standards and protocols, the mobile computingentity 105 can communicate with various other entities using conceptssuch as Unstructured Supplementary Service information/data (US SD),Short Message Service (SMS), Multimedia Messaging Service (MMS),Dual-Tone Multi-Frequency Signaling (DTMF), and/or Subscriber IdentityModule Dialer (SIM dialer). The mobile computing entity 105 can alsodownload changes, add-ons, and updates, for instance, to its firmware,software (e.g., including executable instructions, applications, programmodules), and operating system.

According to one embodiment, the mobile computing entity 105 may includelocation determining aspects, devices, modules, functionalities, and/orsimilar words used herein interchangeably. For example, the mobilecomputing entity 105 may include outdoor positioning aspects, such as alocation module adapted to acquire, for example, latitude, longitude,altitude, geocode, course, direction, heading, speed, UTC, date, and/orvarious other information/data. In one embodiment, the location modulecan acquire data, sometimes known as ephemeris data, by identifying thenumber of satellites in view and the relative positions of thosesatellites. The satellites may be a variety of different satellites,including LEO satellite systems, DOD satellite systems, the EuropeanUnion Galileo positioning systems, the Chinese Compass navigationsystems, Indian Regional Navigational satellite systems, and/or thelike. Alternatively, the location information/data may be determined bytriangulating the mobile computing entity's 105 position in connectionwith a variety of other systems, including cellular towers, Wi-Fi accesspoints, and/or the like. Similarly, the mobile computing entity 105 mayinclude indoor positioning aspects, such as a location module adapted toacquire, for example, latitude, longitude, altitude, geocode, course,direction, heading, speed, time, date, and/or various otherinformation/data. Some of the indoor aspects may use various position orlocation technologies including RFID tags, indoor beacons ortransmitters, Wi-Fi access points, cellular towers, nearby computingdevices (e.g., smartphones, laptops) and/or the like. For instance, suchtechnologies may include iBeacons, Gimbal proximity beacons, BLEtransmitters, Near Field Communication (NFC) transmitters, and/or thelike. These indoor positioning aspects can be used in a variety ofsettings to determine the location of someone or something to withininches or centimeters.

The mobile computing entity 105 may also comprise a user interface (thatcan include a display 416 coupled to a processing element 408) and/or auser input interface (coupled to a processing element 408). For example,the user interface may be an application, browser, user interface,dashboard, webpage, and/or similar words used herein interchangeablyexecuting on and/or accessible via the mobile computing entity 105 tointeract with and/or cause display of information. The user inputinterface can comprise any of a number of devices allowing the mobilecomputing entity 105 to receive data, such as a keypad 418 (hard orsoft), a touch display, voice/speech or motion interfaces, scanners,readers, or other input device. In embodiments including a keypad 418,the keypad 418 can include (or cause display of) the conventionalnumeric (0-9) and related keys (#, *), and other keys used for operatingthe mobile computing entity 105 and may include a full set of alphabetickeys or set of keys that may be activated to provide a full set ofalphanumeric keys. In addition to providing input, the user inputinterface can be used, for example, to activate or deactivate certainfunctions, such as screen savers and/or sleep modes. Through such inputsthe mobile computing entity can collect contextual information/data aspart of the telematics data.

The mobile computing entity 105 can also include volatile storage ormemory 422 and/or non-volatile storage or memory 424, which can beembedded and/or may be removable. For example, the non-volatile memorymay be ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards,Memory Sticks, CBRAM, PRAM, FeRAM, RRAM, SONOS, racetrack memory, and/orthe like. The volatile memory may be RAM, DRAM, SRAM, FPM DRAM, EDODRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, RIMM, DIMM, SIMM,VRAM, cache memory, register memory, and/or the like. The volatile andnon-volatile storage or memory can store databases, database instances,database management system entities, data, applications, programs,program modules, scripts, source code, object code, byte code, compiledcode, interpreted code, machine code, executable instructions, and/orthe like to implement the functions of the mobile computing entity 105.

d. Exemplary User Computing Entity

In one embodiment, the user computing entities 117 may each include oneor more components that are functionally similar to those of the carriercomputing entity 110 and/or the mobile computing entity 105 as describedin FIGS. 3 and 4. For example, in one embodiment, each of the usercomputing entities 117 may include: (1) a processing element thatcommunicates with other elements via a system interface or bus; (2) auser interface; (3) transitory and non-transitory memory; and (4) acommunications interface. As previously noted, the user computing entity117 may comprise a user interface. For example, the user interface maybe an application, browser, user interface, dashboard, webpage, and/orsimilar words used herein interchangeably executing on and/or accessiblevia the user computing entity 117 to interact with and/or cause displayof information/data from the carrier computing entity 110 and/or themobile computing entity 105, as described herein. These architecturesare provided for exemplary purposes only and are not limiting to thevarious embodiments.

e. Exemplary Shipment/Item

In one embodiment, a shipment/item may be any tangible and/or physicalobject. In one embodiment, a shipment/item may be or be enclosed in oneor more packages, envelopes, parcels, bags, goods, products, containers,loads, crates, items banded together, vehicle parts, pallets, drums, thelike, and/or similar words used herein interchangeably. In oneembodiment, each shipment/item may include and/or be associated withshipment/item identifier, such as an alphanumeric identifier. Suchshipment/item identifiers may be represented as text, barcodes, tags,character strings, Aztec Codes, MaxiCodes, information/data Matrices,Quick Response (QR) Codes, electronic representations, and/or the like.A unique shipment/item identifier (e.g., 123456789) may be used by thecarrier to identify and track the shipment/item as it moves through thecarrier's transportation network. Further, such shipment/itemidentifiers can be affixed to shipments/items by, for example, using asticker (e.g., label) with the unique shipment/item identifier printedthereon (in human and/or machine readable form) or an RFID tag with theunique shipment/item identifier stored therein. Such items may bereferred to as “connected” shipments/items and/or “non-connected”shipments/items.

In one embodiment, connected shipments/items include the ability todetermine their locations and/or communicate with various computingentities. This may include the shipment/item being able to communicatevia a chip or other devices, such as an integrated circuit chip, RFIDtechnology, NFC technology, Bluetooth technology, Wi-Fi technology, andany other suitable communication techniques, standards, or protocolswith one another and/or communicate with various computing entities fora variety of purposes. Connected shipments/items may include one or morecomponents that are functionally similar to those of the carrier server100 and/or the mobile device 110 as described herein. For example, inone embodiment, each connected shipment/item may include one or moreprocessing elements, one or more display device/input devices (e.g.,including user interfaces), volatile and non-volatile storage or memory,and/or one or more communications interfaces. In this regard, in someexample embodiments, a shipment/item may communicate send “to” addressinformation/data, received “from” address information/data, uniqueidentifier codes, location information/data, status information/data,and/or various other information/data.

In one embodiment, non-connected shipments/items do not typicallyinclude the ability to determine their locations and/or might not beable communicate with various computing entities or are not designatedto do so by the carrier. The location of non-connected shipments/itemscan be determined with the aid of other appropriate computing entities.For example, non-connected shipments/items can be scanned (e.g., affixedbarcodes, RFID tags, and/or the like) or have the containers or vehicles100 in which they are located scanned or located. As will be recognized,an actual scan or location determination of a shipment/item is notnecessarily required to determine the location of a shipment/item. Thatis, a scanning operation might not actually be performed on a labelaffixed directly to a shipment/item or location determination might notbe made specifically for or by a shipment/item. For example, a label ona larger container housing many shipments/items can be scanned, and byassociation, the location of the shipments/items housed within thecontainer are considered to be located in the container at the scannedlocation. Similarly, the location of a vehicle 100 transporting manyshipments/items can be determined, and by association, the location ofthe shipments/items being transported by the vehicle 100 are consideredto be located in the vehicle 100 at the determined location. These canbe referred to as “logical” scans/determinations or “virtual”scans/determinations. Thus, the location of the shipments/items is basedon the assumption they are within the container or vehicle 100, despitethe fact that one or more of such shipments/items might not actually bethere.

In various embodiments, shipments/items may have associatedshipment/item information/data associated therewith. The shipment/iteminformation/data may be stored in a shipment/item database comprisingone or more shipment/item profiles corresponding to each of a pluralityof shipments/items. For example, the shipment/item information/data fora particular shipment may comprise information/data indicative of ashipment/item identifier associated with the shipment, an intendeddestination for the shipment/item, the current location of the shipment,a vehicle 100 and/or storage location containing the shipment/item,and/or the like. In various embodiments, the shipment/iteminformation/data for a particular shipment/item may be updated toreflect current information/data for a particular shipment/item, forexample, as the shipment/item is transported by the carrier between anorigin and a destination. For example, the current location of ashipment/item may be updated to reflect the current location of theshipment/item. The current location of the shipment/item may bereflective of a precise location determined by, for example, GPS orother location determining devices, or a location relative to othercarrier locations (e.g., within a particular carrier hub, within aparticular carrier vehicle 100, and/or the like). Moreover, theshipment/item information/data may be indicative of a current status ofthe shipment/item relative to its intended delivery location. Forexample, the shipment/item information/data may indicate that ashipment/item is “in transit” while the shipment/item is in thepossession of the carrier and prior to delivery, and “delivered” afterthe shipment/item has been dropped off at its intended destination.

Moreover, in various embodiments, the shipment/item information/data maycomprise contact information/data for an entity associated with theshipment/item (e.g., the shipment/item recipient). For example, thecontact information/data may comprise an email address, telephonenumber, social media username (e.g., twitter username, Instagramusername, and/or the like), and/or the like. In various embodiments, thecontact information/data may be stored in association with shipment/iteminformation/data for a shipment/item based on user input providinginformation/data specific to a particular shipment/item (e.g., when theshipment/item is provided to the carrier). In certain embodiments, thecontact information/data may be obtained automatically from a userprofile database comprising information/data for a plurality ofshipment/item recipients, shippers, and/or the like. As a non-limitingexample, the contact information/data for a particular shipment/item maybe identified by comparing the shipment/item information/data for aparticular shipment/item against user profile information/data stored inthe user profile database. Upon identifying a match between theshipment/item information/data and information/data corresponding to aparticular user profile (e.g., based on a match between the destinationlocation for the shipment/item and an address associated with a userprofile), contact information/data stored in association with the userprofile may be associated with the shipment/item information/data forthe shipment/item.

III. Exemplary System Operation a. Exemplary Carrier Computing EntityOperation

As mentioned previously, various embodiments provide a shipment/itemrecipient/user with information/data regarding the current location of ashipment/item prior to delivery of the shipment/item to an intendeddestination. In various embodiments, the location of the shipment/itemis determined based on the location of a vehicle (e.g., manned orunmanned terrestrial vehicle, nautical vehicle, and/or aerial vehicle)containing the shipment/item (and/or the location of a computing entitycarried by a vehicle operator), and accordingly various components ofthe system are configured to associate the location of the vehicle withshipments/items contained by the vehicle. Moreover, as mentioned, thesystem may be configured to terminate sharing the location of theshipment/item (as determined by the location of the vehicle) uponreceipt of information/data indicating the shipment/item has beendelivered. Although the following is described in the context of aterrestrial vehicle 100, it should be recognized that the variousembodiments described herein apply to all different types of vehiclesdescribed above (e.g., manned or unmanned terrestrial vehicles, nauticalvehicles, and/or aerial vehicles), including but not limited to vehicle100, primary delivery vehicle 150, and UAVs 155.

FIG. 5A illustrates a flowchart of steps performed for providinginformation/data indicative of the current location of a shipment/itemto a shipment/item recipient/user. Beginning with block 501, a computingentity (e.g., the carrier computing entity 110 may associate theshipment/item with a delivery vehicle by updating item package leveldetail (shipment/item) information/data in a shipment/item database. Insome embodiments, a shipment/item is associated with a particularvehicle 100, such that the location of the shipment/item may bedetermined based on the location of the vehicle 100. In variousembodiments, a shipment/item may be associated with a particular vehicle100 by updating the shipment/item information/data for a particularshipment/item to include information/data indicative of a vehicle 100containing the shipment/item, by storing shipment/item information/datafor the shipment/item in a memory of the carrier computing entity 110,vehicle 100 and/or mobile computing entity 105 carried by the vehicleoperator, and/or the like.

As just one example, the shipment/item may be associated with aparticular vehicle 100 (e.g., using a vehicle ID) when the shipment/itemis loaded onto the vehicle 100. For example, as a vehicle 100 is beingloaded, a mobile computing entity 105 (for example, operated by aloading employee of the carrier) may scan shipment/item indicia on theshipment/item. The mobile computing entity 105 may then associate thescanned shipment/item information/data (e.g., indicia) with a particularvehicle 100 (e.g., by consecutively scanning a vehicle 100 indicia onthe vehicle 100 in which the shipment/item is loaded). The mobilecomputing entity 105 may then transmit information/data indicative ofthe vehicle 100 to be associated with the shipment/item to the carriercomputing entity 110, which may update the shipment/iteminformation/data for the particular shipment/item to reflect theassociation with the particular vehicle 100.

As another example, the shipment/item may be associated with aparticular vehicle 100 when information/data indicative of an assignedvehicle route is stored in a memory device of the carrier computingentity 110, the mobile computing entity 105, and/or the vehicle 100. Forexample, an assigned vehicle route for a particular vehicle 100 may bestored on the memory of the mobile computing entity 105 to be carried bythe operator of the vehicle 100. The assigned vehicle routeinformation/data may comprise information/data indicative of theidentity of the shipments/items to be delivered (e.g., a portion of theshipment/item data, such as the shipment/item identifier), as well astheir respective destination locations. In various embodiments, theassigned vehicle route may additionally comprise a navigational route tobe followed by the vehicle 100 during the delivery route, including anassigned delivery sequence for delivering shipments/items along theassigned delivery route. In this example, shipment/item information/datafor the packages to be delivered by the vehicle 100 may be stored on themobile computing entity 105, which comprises shipment/iteminformation/data associating the shipments/items with the vehicle 100.In such embodiments, the shipment/item information/data stored on amobile computing entity 105 may be synchronized with shipment/iteminformation/data stored in memory associated with a carrier computingentity 110. In certain embodiments, the shipment/item information/datastored in the memory of the mobile computing entity 105 may be utilizedto update location provided via a shipment/item tracking session, asdiscussed in detail herein. For example, in such embodiments, theshipment/item information/data stored on the mobile computing entity 105may instruct a web server (and/or the carrier computing entity 110) togenerate and/or update shipment/item tracking sessions based on updatedshipment/item information/data for shipments/items as stored on themobile computing entity 105.

By associating the shipment/item with a particular vehicle 100, thelocation of the shipment/item may be determined based on the location ofthe vehicle 100 (and/or the location of the mobile computing entity 105carried by the vehicle operator) as the vehicle 100 traverses theassigned vehicle route. In some examples, the shipment/item may beassociated with a particular primary delivery vehicle 150 as the primarydelivery vehicle 150 traverses the assigned vehicle route, and may thenbe associated with a particular UAV 155 in an instance in which theshipment/item is being delivered from the primary delivery vehicle 155to its intended destination by the UAV 155. Accordingly, the location ofthe shipment/item may be determined based on the location of the primarydelivery vehicle 150 or the UAV 155.

With reference again to FIG. 5A, a computing entity (e.g., the carriercomputing entity 110 or a mobile computing entity 105 carried by adelivery vehicle operator) generates a shipment/item tracking sessionbased on the shipment/item shipment/item information/data identifying acurrent location of the shipment/item as indicated at block 502. In someexamples, carrier computing entity 110 or a mobile computing entity 105generates a shipment/item tracking session for one or moreshipments/items located in a particular vehicle 100. As just oneexample, the carrier computing entity 110 generates a singleshipment/item tracking session for each shipment/item to be delivered.Each shipment/item tracking session may be associated with a uniquewebpage stored in association with a unique shipment/item trackingsession identifier (e.g., an alphanumeric character string, such asABC123). For example, each shipment/item tracking session may be storedon the carrier computing entity 110 and made available to usersoperating user computing entities 117 (user devices) via a network(e.g., the Internet), or the shipment/item tracking session may bestored on a third party web server and made available to users on usercomputing entities 117 via a network (e.g., the Internet). Each webpagemay be associated with a unique URL, for example, comprising thecorresponding unique shipment/item tracking session identifier. Forexample, the webpage for the above example shipment/item trackingsession may be accessible via a URL www.carrier.com/tracking/ABC123.

In various embodiments, the unique shipment/item tracking sessionidentifier may be provided to a shipment/item recipient/user to accessthe shipment/item tracking session. This shipment/item tracking sessionidentifier may be incorporated into a hyperlink configured to direct abrowser (e.g., an internet browser stored on and operated from a usercomputing entity 117 (e.g., a recipient/user's user computing entity117)) to the webpage corresponding to the shipment/item trackingsession. In various embodiments, a computing entity (e.g., carriercomputing entity 110) transmits the shipment/item tracking sessionidentifier and/or the hyperlink to the shipment/item recipient/user toaccess the webpage corresponding to the shipment/item tracking session.

In various embodiments, the webpage may comprise information/dataindicative of the current location of the shipment/item and/or anestimated delivery time (e.g., an estimated delivery time and/or anestimated delivery time window) for the shipment/item. As will bedescribed in greater detail herein, the amount and/or type ofinformation/data displayed via the webpage associated with theshipment/item tracking session may vary based on one or more accesslevel criteria.

In some examples, information/data supplied via the shipment/itemtracking session may also include audio information such that a usercomputing entity may audibly indicate the location of the shipment/item.For example, the information/data may include audio information whichaudibly indicates an approximate location of the shipment/item intransit, an estimated time of arrival of the shipment item, and/or anyof the other information that may be visually provided by theshipment/item tracking session described herein.

With reference again to FIG. 5A, a computing entity (e.g., the carriercomputing entity 110) determines that a session availability trigger hasoccurred, as indicated in block 503. In some examples, this may includedetermining that the shipment/item is associated with the deliveryvehicle such as vehicle 100, determining that the shipment/item iswithin a delivery time window as described herein, or receiving arequest to view the shipment/item tracking session from the user. Insome examples, the shipment/item tracking session may be available to arecipient/user as soon as the item is associated with a deliveryvehicle, thus when the shipment/item is associated with the deliveryvehicle a session availability trigger occurs. In another example, theshipment/item tracking session may be available to a recipient/user whenthe vehicle is within a delivery window (e.g. the day of delivery, or atime period such as two hours before expected delivery), thus at thebeginning of the time period representing the delivery window a sessionavailability trigger occurs. In yet another example, if a recipient/userhas requested access to an item tracking session, such as clicking on alink in user profile, a session availability trigger occurs. Forexample, if a user is expecting a shipment/item delivery on a specificday, he/she may select to view an item tracking session prior toreceiving a notification that an item tracking session is available.

Referring again to FIG. 5A, a computing entity (e.g., the carriercomputing entity 110) then provides access to the shipment/item trackingsession to a user in response to the determination that the sessionavailability trigger has occurred, as indicated at block 504. In someexamples, the computing entity provides the shipment/item trackingsession to the shipment/item recipient/user and/or one or more otherusers. For example, in the morning of a delivery day for ashipment/item, the recipient/user is provided an estimated deliverywindow encompassing a period of time during which delivery of thepackage is expected (e.g., Your package is scheduled to be deliveredbetween 4:00 PM and 8:00 PM). This estimated delivery window may bebased on the vehicle operator's assigned vehicle route for that day.

As previously mentioned, the carrier computing entity 110 may transmit ahyperlink to the shipment/item recipient/user (e.g., via email) thatdirects the shipment/item recipient/user's user computing entity 117 toa webpage (or other interface) comprising information/data correspondingto the shipment/item tracking session. In various embodiments, access tothe shipment/item tracking session may be encrypted, such that therecipient/user (and/or another entity) is required to provide anencryption key (e.g., a password) to access the shipment/item trackingsession. In various embodiments, the encryption key may be providedtogether with the shipment/item tracking session identifier (e.g., theencryption key may be provided by the carrier computing entity 110).However, in certain embodiments, the encryption key may be selected bythe recipient/user (and/or another entity). For example, an encryptionkey may be stored in a user profile as discussed above. Upon determiningthat the user profile is associated with a particular shipment/item, theencryption key associated with the user profile may be associated withthe generated shipment/item tracking session.

In certain embodiments, access to the shipment/item tracking session maybe unencrypted, such that anyone with knowledge of the shipment/itemtracking session identifier and/or the provided hyperlink may access theshipment/item tracking session. In such embodiments, the shipment/itemtracking session identifier may comprise a random and/or pseudo-randomgenerated alphanumeric string in order to minimize the likelihood thatan unauthorized entity can simply guess the shipment/item trackingsession identifier. However, it should be understood that theshipment/item tracking session identifier for each shipment/itemtracking session may be generated in any of a variety of ways, such assequentially (e.g., each new shipment/item tracking session identifieris generated in increasing sequence), based on information/data storedin a user profile (e.g., a username stored in the user profile), and/orthe like.

Turning to FIG. 5D, in some embodiments, providing access to theshipment/item tracking session to the user comprises the computingentity 110 generating a map access link, such as the hyperlink discussedabove, wherein selection of the map access link by the user providesrenderable map information/data to the user via the user computingentity 117, as shown in block 531. In some examples, the renderable mapinformation/data may include location and map viewing sizeinformation/data (such as described in FIG. 5C, such that a usercomputing entity may render the map in a mapping application).

In some examples, the renderable map information/data may additionallyor alternatively include audio information such that a user computingentity may audibly indicate the location of the shipment/item. Forexample, the renderable map information/data may include audioinformation which audibly indicates the location in transit of theshipment/item, an estimated time of arrival of the shipment item, and/orany of the other information that may be visually provided by a map in amapping application. In some embodiments, the audio information mayinclude descriptive information which audibly describes an approximatedistance (e.g., in miles or kilometers), an expected route of travel tothe destination from the location in transit of the shipment/item,traffic along the expected route, or the like.

As shown in block 531, the computing entity may then generate a mapavailable notification, wherein the map available notification comprisesthe map access link.

The computing entity may then deliver the map available notification tothe user through a computing entity such as user computing entity 117,as shown in block 533. In some examples, the notification is deliveredto the user using one or more of an email, a short message service, or anotification in a user delivery profile.

With reference again to FIG. 5A, the carrier computing entity 110 mayreceive information/data representing an updated location of thevehicle, as shown in block 505. In some examples, the computing entitymay receive information/data indicative of the current location of thevehicle 100 containing the shipment/item. As previously noted, theshipment/item is associated with a particular vehicle 100 (and/or amobile computing entity 105 carried by a vehicle operator, primarydelivery vehicle 150, or UAV 155), such that the location of the vehicle100 is indicative of the location of the shipment/item. In variousembodiments, the carrier computing entity 110 may receive the currentlocation of the vehicle 100 in response to the occurrence of one or moretrigger events. For example, the carrier computing entity 110 mayreceive the current location of the vehicle 100 in response to alocation inquiry (which may be generated upon determining that ashipment/item recipient/user has requested access to the shipment/itemtracking session (e.g., by clicking on the provided hyperlink)), inresponse to a determination that a predefined length of time has elapsedsince the last receipt of location information/data (e.g., 1 second, 30seconds, 1 minute, and/or the like), in response to receipt ofinformation/data that one or more shipments/items contained within thevehicle 100 have been delivered, and/or the like. Accordingly, thelocation of the vehicle 100 (and consequently the location ofshipments/items contained within the vehicle 100) may be monitored atleast periodically as the vehicle 100 traverses an assigned vehicleroute such that updating the shipment/item tracking session may includeupdating the shipment/item tracking session continuously, updating theshipment/item tracking session at least once during a first time period,wherein the first time period comprises a range of one minutes to fiveminutes, or updating the shipment/item tracking session at least onceduring a second time period, wherein the second time period comprises arange of five minutes to fifteen minutes.

With reference to block 506 of FIG. 5A, the carrier computing entity 110updates the shipment/item information/data item and the shipment/itemtracking session to indicate the current location of the shipment/itemis the updated location of the vehicle. As noted above, the location ofthe vehicle 100 may be received in response to one or more triggerevents, and thus the location of the shipment/item, as reflected in theshipment/item tracking session, may be updated upon receipt of updatedvehicle 100 location information/data. Moreover, as mentionedpreviously, the location of the shipment/item as reflected in theshipment/item tracking session may be based on a location of theshipment/item as reflected in the shipment/item information/data for theshipment/item. Accordingly, the carrier computing entity 110 (or anothercomputing entity) may update the shipment/item information/data for theshipment/item upon receipt of updated location information/data for theshipment/item. The shipment/item tracking session may then be updated toreflect the location of the shipment/item as stored in the shipment/itemdata.

As previously mentioned, the amount of information/data that may beprovided via the shipment/item tracking session may vary based on adetermination of whether a particular shipment/item satisfies one ormore access level criteria, as indicated at blocks 541-542 of FIG. 5E.For example, the amount of information/data provided to theshipment/item recipient/user may vary over time, such that ashipment/item recipient/user may receive increasingly moreinformation/data as the shipment/item gets closer to its final deliverylocation (e.g., an inverse relationship). As specific examples, thelevels of information/data may comprise (1) a first access levelproviding a simple estimated delivery window (e.g., Delivery is expectedbetween 4:00 PM and 8:00 PM today), (2) a second access level providinga map showing an imprecise location of a delivery vehicle 100 (e.g.,represented by an enlarged polygon shown covering a region of a mapdisplay) and/or a narrowed expected delivery window (e.g., Delivery isexpected between 5:00 PM and 7:00 PM), and/or (3) a third access levelproviding a map showing a precise location of a delivery vehicle 100(e.g., indicated by an icon displayed on a map) and/or an estimateddelivery time (e.g., Delivery is expected at 5:06 PM). In oneembodiment, the location of the vehicle 100 (and shipment/item) isdisplayed via an inverse relationship with regard to the time fromdelivery. For instance, the further the time from delivery, the largerthe icon or less imprecise the location information/data for the vehicle100 is provided for display. The closer the time to delivery, the moreprecise the location information/data for the vehicle 100 is providedfor display.

As another example, once the vehicle 100 is within a specified distance,time, and/or number of deliveries of delivering the shipment/item to therecipient/user, the recipient/user is given access to additionalinformation/data showing the vehicle's 100 estimated location on a map.Simultaneously, the estimated delivery window may be narrowed, based onthe current location of the delivery vehicle 100 (e.g., the estimateddelivery window may begin by indicating that the shipment/item isscheduled for delivery on a particular day, and then may be narrowed toindicate that it is scheduled to be delivered between 5:00 PM and 6:30PM on that day). The estimated location may be imprecise (e.g., theestimate encompasses a geographic region including several streets), asshown in FIGS. 8B and 8C, in order to provide only an estimate of thevehicle's 100 current location without disclosing the precise currentlocation of the vehicle 100. In various embodiments, this level ofdetail regarding a vehicle's 100 current location may be sharedbeginning at the start of the delivery day.

In various embodiments, the access level criteria may be predefinedbased on a distance between the current location of the shipment/itemand its intended destination. For example, a computing entity (e.g.,carrier computing entity 110) may generate one or more geofences arounda destination location for a shipment/item. The geofences may be definedbased on a distance threshold associated with each of one or more accesslevel criteria, such that the computing entity may determine whether theshipment/item is within a predefined threshold distance of thedestination location in order to determine the appropriate amount ofinformation/data to be provided via the shipment/item tracking session.For example, upon determining that the shipment/item is outside of oneor more geofences, a first access level may be provided via theshipment/item tracking session, upon determining that the shipment/itemis within a first geofence but outside of a second geofence, a secondaccess level may be provided via the shipment/item tracking session, andupon determining that the shipment/item is within both the firstgeofence and the second geofence, a third access level may be providedvia the shipment/item tracking session. In various embodiments in whicha plurality of geofences are provided around a destination location, theplurality of geofences may be nested, such that one or more geofencesare entirely within one or more other geofences. For example, aplurality of nested geofences may be defined as concentric circlesaround the destination location, such as a first geofence having a firstradius extending away from the destination location, and a secondgeofence having a second, smaller radius extending away from thedestination location. As a further example, the current location of theshipment/item may be determined based on the location of a vehicle 100in a geofenced area, as discussed in U.S. Pat. No. 9,222,781, theentirety of which is incorporated herein by reference.

In certain embodiments, the access level criteria may comprisetime-based access level criteria, such that the amount ofinformation/data shared with a shipment/item recipient/user is variedbased on the estimated time remaining before delivery. For example, theaccess level criteria may comprise one or more estimated time untildelivery thresholds that may be utilized to determine an amount ofinformation/data to be provided via the shipment/item tracking session.For example, a first access level may be provided via the shipment/itemtracking session upon a determination that the shipment/item is morethan a threshold amount of time away from being delivered; a secondaccess level may be provided via the shipment/item tracking session upona determination that the shipment/item is less than a first thresholdtime away from being delivered but more than a second threshold amountof time away from being delivered; and a third access level may beprovided via the shipment/item tracking session upon a determinationthat the shipment/item is less than the first threshold time and thesecond threshold time away from being delivered.

In yet other embodiments, the shipment/item access criteria may comprisea delivery sequence-based criteria, such that the amount ofinformation/data shared with a shipment/item recipient/user is variedbased on the number of delivery stops remaining before a delivery stopcorresponding to the shipment/item. For example, a first access levelmay be provided via the shipment/item tracking session upon adetermination that the shipment/item is more than a threshold number ofdeliveries away from being delivered; a second access level may beprovided via the shipment/item tracking session upon a determinationthat the shipment/item is less than a first threshold number ofdeliveries away from being delivered but more than a second thresholdnumber of deliveries away from being delivered; and a third access levelmay be provided via the shipment/item tracking session upon adetermination that the shipment/item is less than the first thresholdnumber of deliveries and the second threshold number of deliveries awayfrom being delivered. As a further example, the shipment/item accesscriteria of the shipment/item may be determined based on the deliverysequence-based criteria.

Various embodiments utilize different combinations of these item accesscriteria, such that any given embodiment may use a possibly uniquecombination of distance-based, time-based, and/or delivery sequencebased item access criteria.

FIG. 5B provides another example process where the shipment/itemtracking session identifies the current location of the shipment/item bygenerating renderable map information/data identifying the currentlocation of the item. As shown in block 511 the carrier computing entity110, may determine multiple access views of the renderable map data,wherein the multiple views comprise at least a wide view of therenderable map information/data associated with a first range oflocations of the delivery vehicle (such as the view shown in FIG. 8A),the first range of locations may be while the delivery vehicle is faraway from the delivery location thus showing a large or wide area suchas a city level view.

The multiple views may also include a second view, such as a moderateview of the renderable map information/data associated with a secondrange of locations of the delivery vehicle (such as the view shown inFIGS. 8B and 8C). The second range of locations may be while thedelivery vehicle is closer but still some distance away from thedelivery location. For example, the delivery vehicle may be halfwaythrough the deliveries before the shipment/item being tracked. Thesecond/moderate view will be zoomed in more than the wide view, forexample it may show several neighborhoods or part of a city.

The multiple views may also include a third view, such as a close orzoomed in view of the renderable map information/data associated with athird range of locations of the delivery vehicle (such as the view shownin FIGS. 8D). The third/close view may be zoomed in and associated witha range of locations that indicate the shipment/item will be deliveredsoon. The third/close view will be zoomed in more than the moderateview, for example the close view may show a neighborhood or a few blocksaround the delivery location.

As shown in block 512, the carrier computing entity 110 then determinesthat the delivery vehicle is within the second range of locations usingany of the location determination methods described above.

As shown in block 513, the carrier computing entity 110 provides therenderable map information/data corresponding to the moderate view ofthe map to the one or more users in response to determining that thedelivery vehicle is within the second range of location.

As shown in block 514, the carrier computing entity 110 determines thatthe delivery vehicle is within the third range of locations.

As shown in block 515, the carrier computing entity 110 provides therenderable map information/data corresponding to the close view of themap to the one or more users in response to determining that thedelivery vehicle is within the third range of location.

With reference to FIG. 6A, a first access level may be provided for allshipments/items that do not satisfy any access level criteria. Accordingto the first access level, the webpage associated with a shipment/itemtracking session may not include information/data about the currentlocation of the shipment/item, and the webpage may instead provide anestimated window when the shipment/item recipient/user can expect toreceive the shipment/item (e.g., Delivery expected between 4:00 PM and8:00 PM), as shown in FIG. 6A.

In another example, embodiment, with reference to FIG. 6B, a genericaccess level may be provided for all shipments/items that may bedelivered during a specific time period (e.g. deliveries scheduled forthat entire day) without regards to a determined access level criteria.According to the generic access level, the webpage associated with ashipment/item tracking session may not automatically includeinformation/data about the current location of the shipment/item, andthe webpage may instead provide information/data and options regardingthe shipment/item such as a change delivery option 614, a view deliveryplanner option 616, or follow my delivery option 612. In the instancethat a recipient/user selects the follow my delivery option 612, theamount of information/data subsequently provided by the webpage mayincrease based on the current location of the shipment/item, asdescribed previously.

In various embodiments, the amount of information/data provided via thewebpage associated with the shipment/item tracking session may increaseupon a determination that the shipment/item satisfies a first accesslevel criteria. As mentioned, the access level criteria may comprise adistance-based access level criteria, a time-based access levelcriteria, and/or a delivery sequence based access level criteria. Upon adetermination that the shipment/item satisfies a first access levelcriteria, a second access level may be provided via the webpageassociated with the shipment/item tracking session. For example, thesecond access level may cause the webpage associated with theshipment/item tracking session to be populated with a map illustratingan estimated location-region corresponding to the location of theshipment/item. The location-region is oversized, potentially coveringseveral adjacent streets, such that the precise location of theshipment/item (and the carrying vehicle 100) is not disclosed. Moreover,in various embodiments, the location-region may include one or moresymbols, alphanumeric characters, and/or the like. An examplescreenshot/mockup showing information/data provided according to thesecond access permission is shown in FIG. 7A. In the screenshot/mockupof FIG. 7A, the delivery vehicle 100 is located somewhere within thelocation-region 702 identified as the carrier branded concentriccircles. The delivery location is marked by the dropdown pin 704. Theprogress of the delivery is also shown in progress bar 706. An examplescreenshot/mockup showing information/data provided according to thesecond access permission is shown in FIG. 7A.

Another example screenshot/mockup showing information/data providedaccording to generic access permission is shown in FIG. 7B following theexample shown in 6B wherein a recipient/user selected the follow mydelivery option. In the screenshot/mockup of FIG. 7B, the deliveryvehicle 100 corresponds to the location 712 (identified as the “UPS”parcel). The delivery location is marked by the house symbol 714. In thescreenshot/mockup of FIG. 7B, also includes other shipment/iteminformation/data provided to the recipient/user such as a trackingnumber 716, the delivery location address 718, and estimated deliverytime 720.

In various embodiments, the location-region may be generated based onthe current location of the delivery vehicle 100 and various predefinedparameters for defining the location-region. The predefined parametersmay comprise a random and/or pseudo random algorithm for generatingand/or placing the location-region on a map display relative to theactual location of the delivery vehicle 100. Because the location-regionis configured to mask the actual location of the delivery vehicle 100,the actual location of the delivery vehicle 100 should not be directlypredictable from the placement of the location-region on a map display.Accordingly, the placement location of the location-region on agenerated map display may be randomly generated such that the actuallocation of the delivery-vehicle 100 is somewhere within the map areacovered by the location-region.

The size and/or placement of the location-region may be generated basedon the street density surrounding the area in which the delivery vehicle100 is located. For example, in a dense urban neighborhood, severalstreets may be located within a small geographic area, and accordingly arelatively small location-region may be sufficient to mask the actuallocation of the delivery vehicle 100. However, in a rural region, only asmall number of roadways (e.g., only one roadway) may be located withina small geographical region, and accordingly a small location-region maystill be indicative of an actual location of a delivery vehicle 100.Accordingly, the size of the location-region may be generated toencompass a plurality of roadways (e.g., a threshold number ofalternative roadways) to mask the actual location of the deliveryvehicle 100. As a non-limiting example, the size of the location-regionmay be selected to encompass at least 5 roadways. Accordingly, alocation-region within a dense urban area may be smaller than alocation-region within a more sparsely populated rural area.

Moreover, in various embodiments, a computing entity (e.g., carriercomputing entity 110) may be configured to modify one or morecharacteristics of the location-region indicated on the map display ofthe shipment/item tracking session based on various criteria. Forexample, the size, shape, appearance, location, and/or the like of thelocation-region displayed on the map display may change as delivery of ashipment/item becomes more imminent (e.g., the distance between theshipment/item and the destination location shrinks, the estimated timeremaining until delivery decreases (e.g., determined based on acomparison between the current time and an estimated time of delivery),and/or the number of deliveries remaining before delivery of theshipment/item decreases). As a specific example, the size of thelocation-region may decrease to provide an increasing level of precisionregarding the current location of the shipment/item as delivery becomesmore imminent. As yet another example, the color and/or symbolscontained within the displayed location-region may change as deliverybecomes more imminent. As just one specific example, the displayedlocation-region may contain decreasing numbers as delivery becomes moreimminent (e.g., 5, 4, 3, 2, 1).

In various embodiments, the one or more characteristics of thelocation-region may change continuously as delivery of the shipment/itembecomes more imminent. For example, the size of the displayedlocation-region may continuously decrease as delivery becomes moreimminent. In other embodiments, the one or more characteristics of thelocation-region may change in a “lock-step” fashion, for example, afterdetermining that the shipment/item satisfies one or more additionallocation-region change criteria. Like the access level criteria, thelocation-region change criteria may be location based (e.g., based onvarious distance thresholds between the shipment/item and thedestination location, time based (e.g., based on various time thresholdsindicative of the estimated amount of time remaining before delivery atthe destination location), and/or delivery sequence based (e.g., basedon various threshold numbers of deliveries before delivery at thedestination location). Accordingly, the characteristics of thelocation-region may change each time the shipment/item satisfies anadditional location-region change criteria (e.g., the size of thelocation-region may decrease each time an additional location-regionchange criteria is satisfied). Example screenshot/mockups showing achanging location-region are shown in FIGS. 8A-8D. As shown in FIGS.8A-8D, the size of the location-region may decrease as the shipment/itemmoves closer to the delivery destination, and the location-region maycomprise a decreasing number as the location of the shipment/item movescloser to the delivery destination.

In various embodiments, upon a determination that the shipment/itemsatisfies both the first access level criteria and a second access levelcriteria, a third access level criteria may be provided via the webpageassociated with the shipment/item tracking session. For example, withthe third access permission, the webpage is populated with a mapillustrating a precise location of the vehicle 100 containing theshipment/item (the map may include an icon indicating the location ofthe vehicle 100). The map may additionally illustrates the route to betaken between the current location of the delivery vehicle 100 and thedestination location, for example, as determined based on the assignedvehicle route. An example screenshot/mockup showing information/dataprovided according to the third access permission is shown as FIG. 9A.

Alternatively, FIGS. 9B and 9C are example screenshots/mockups showing ageneric access level including

For example, once the delivery vehicle 100 is within a smaller distance,shorter time, or small number of stops before delivering theshipment/item (e.g., within 1 mile, within 15 minutes, and/or within 3delivery stops), the recipient/user is granted access to more preciseinformation/data about the vehicle's 100 current location. This mayinclude a precise location of the vehicle 100, as well as the scheduledroute to be traveled by the vehicle 100 between the current location ofthe vehicle 100 and the final delivery location for the recipient/user'sshipment/item. The estimated delivery window may be further narrowed toprovide an estimated delivery time of the package (e.g., Your packagewill arrive at 5:48 PM).

With reference to FIG. 5F, the carrier computing entity 110 receives atracking completion signal, as shown in block 551. In some examples, thecomputing entity 110 receives information/data indicating that ashipment/item has been delivered. For example, the information/dataindicating that a shipment/item has been delivered may be received froma mobile computing entity 105 carried by an operator of the vehicle 100carrying the shipment/item. As a specific example, upon delivery of theshipment/item to the destination location, the operator of the vehicle100 may utilize the mobile computing entity 105 to scan theshipment/item indicia on the shipment/item being delivered. The mobilecomputing entity 105 may thereafter transmit information/data indicatingthe scanned shipment/item has been delivered to the destinationlocation. In some further examples, receiving a tracking completionsignal may comprises receiving one or more of a delivery completednotification, a delivery not completed notification, a tracking errornotification, or a tracking time out notification.

Upon receipt of information/data indicating a shipment/item has beendelivered, in various embodiments the carrier computing entity 110 mayterminate the shipment/item tracking session and/or restrict user accessto the shipment/item tracking session upon receiving a trackingcompletion signal, as indicated at block 552. For example, the carriercomputing entity 110 may deactivate the shipment/item tracking sessionidentifier and/or the hyperlink provided to the shipment/itemrecipient/user, such that the webpage associated with the shipment/itemtracking identifier is no longer accessible. Alternatively, the carriercomputing entity 110 may redirect the hyperlink to a second webpage (orother interface) containing alternative content. For example, the secondwebpage may request the user to provide feedback regarding his/her itemdelivery experience.

Accordingly, once a shipment/item has been delivered, the shipment/itemrecipient/user is no longer provided access to view the location of thedelivery vehicle 100. The webpage providing tracking information/datamay indicate the package has been delivered and/or may include a requestfor feedback about the delivery process. FIG. 10 is a screenshot/mockupshowing an example display after a package has been delivered.

In some examples, once the shipment/item is delivered (or the vehicle100 reaches the delivery location, regardless of whether delivery wassuccessful), the recipient/user's access to the vehicle's 100 currentlocation is terminated, such that the recipient/user is no longerenabled to view the vehicle's 100 location.

In various embodiments, the computing entity (e.g., the carriercomputing entity 110) may terminate the shipment/item tracking sessionafter an unsuccessful delivery attempt. For example, if a deliveryvehicle operator attempts to deliver a shipment/item, but is unable tocomplete the delivery (e.g., because the recipient/user was notavailable to provide a required signature confirmation, because therecipient/user was not available to pay additional fees due, and/or thelike), the computing entity may terminate the shipment/item trackingsession, such that the recipient/user is unable to view the location ofthe vehicle 100 containing the shipment/item after the unsuccessfuldelivery attempt.

In various embodiments, the computing entity (e.g., the carriercomputing entity 110) may terminate the shipment/item tracking sessionafter a delivery exception such as a delay in the delivery system. Forexample, if a delivery vehicle 100 will not be able to complete all ofthe deliveries during a delivery time period (e.g. before 9 pm) thecomputing entity may terminate the shipment/item tracking session, suchthat the recipient/user is unable to view the location of the vehicle100 containing the shipment/item after the delivery exception.

As indicated, the access level criteria and/or a determination toterminate a shipment/item tracking session is made individually for eachshipment/item on a vehicle 100. Accordingly, while a first shipment/itemmay have already been delivered by a delivery vehicle 100 and theassociated shipment/item tracking session may have been terminated, asecond shipment/item on the delivery vehicle 100 may be associated withthe first access level, and a third shipment/item on the deliveryvehicle 100 may be associated with a second access level.

A concise example process flow between initiation of a communication toa shipment/item recipient/user and ultimate delivery of a shipment/itemto the shipment/item recipient/user is as follows:

In the morning of a delivery day for a shipment/item, the recipient/useris given an estimated delivery window encompassing a period of timeduring which delivery of the package is expected (e.g., therecipient/user may receive the message “Your package is scheduled to bedelivered between 4:00 PM and 8:00 PM.”). This estimated delivery windowmay be based on the vehicle operator's assigned vehicle route for thatday.

Once the vehicle 100 is within a specified distance, time, and/or numberof deliveries of delivering the shipment/item to the recipient/user, therecipient/user is given access to additional information/data showingthe vehicle's 100 estimated location on a map. Simultaneously, theestimated delivery window may be narrowed, based on the current locationof the delivery vehicle 100 (e.g., the recipient/user may receive themessage “Your package is scheduled to be delivered between 5:00 PM and6:30 PM.”). The estimated location may be imprecise (e.g., the estimateencompasses a geographic region encompassing several streets) in orderto provide only an estimate of the vehicle's 100 current locationwithout disclosing the precise current location of the vehicle 100. Invarious embodiments, this level of detail regarding a vehicle's 100current location may be shared beginning at the start of the deliveryday.

Once the delivery vehicle 100 is within a smaller distance, shortertime, or small number of stops before delivering the shipment/item(e.g., within 1 mile, within 15 minutes, and/or within 3 deliverystops), the recipient/user is granted access to more preciseinformation/data about the vehicle's 100 current location. This mayinclude a precise location of the vehicle 100, as well as the scheduledroute to be traveled by the vehicle 100 between the current location ofthe vehicle 100 and the final delivery location for the recipient/user'sshipment/item. The estimated delivery window may be further narrowed toprovide an estimated delivery time of the package (e.g., Your packagewill arrive at 5:48 PM.”).

Once the shipment/item is delivered (or the vehicle 100 reaches thedelivery location, regardless of whether delivery was successful), therecipient/user's access to the vehicle's 100 current location isterminated, such that the recipient/user is no longer enabled to viewthe vehicle's 100 location.

In some examples, a shipment/item recipient/user may desire to changeaspects of the delivery during the shipment/item tracking session. Forexample, a shipment/item recipient/user may decide from theinformation/data provided in the shipment/item tracking session toaction the shipment/item or change when or how the shipment/item isdelivered. FIG. 5G illustrates a flowchart of additional steps performedfor a user to request a delivery action. Beginning with block 561, thecarrier computing entity 110 receives a delivery action request from theuser.

As shown in blocks 562-565, the desired user change may comprises one ormore of a user selection to intercept the delivery vehicle to acceptdelivery of the item, a user selection of a new delivery address for theitem, a user selection to accept delivery of the shipment/item at aretail location, or a user selection to accept delivery of theshipment/item at an access point.

As shown in block 566, the carrier computing entity may then determinethat the delivery action request has been granted.

As shown in block 567, the carrier computing entity may then determinethat the desired user change to the shipment/item delivery has beencompleted. For example, if a user request to intercept the deliveryvehicle is granted and the user has successfully received the packagefrom the delivery vehicle 100, the computing entity may determine thatthe desired user change is completed.

As shown in block 568, the carrier computing entity may then update theshipment/item tracking session according to completed desired change.For example, if the user has received the package, the shipment/itemtracking session will reflect that the package is delivered as describedabove.

b. Exemplary User Computing Entity Operation

As mentioned, various embodiments provide a shipment/item recipient/userwith information/data regarding the current location of a shipment/itemprior to delivery of the shipment/item to an intended destination. Insome examples, the information/data is provided to a user utilizing auser device such as user computing entity 117. Thus various methods aredescribed herein to show. In various embodiments, the location of theshipment/item is provided to a user through a user interface which maybe an application, browser, user interface, dashboard, webpage, and/orother similar service which may be accessed on a user device. The userinterface may be embodied as shown in FIGS. 6A-10 and described above.

FIG. 11A illustrates a flowchart of steps performed for providinginformation/data indicative of the current location of a shipment/itemto a shipment/item recipient/user. Beginning with block 1101, the usercomputing entity 117 receives, from a carrier computing entity 110(server), access to a shipment/item tracking session regarding the item.This may include receiving a map available notification from the carriercomputing entity 110, wherein the map available notification comprises amap access link. In some examples, the map available notification isreceived as one or more of an email, a short message service, or anotification in a user delivery profile.

As shown in block 1102, the user computing entity may then gather, fromthe carrier computing entity 110, information/data representing acurrent location of the item. In some examples, the gatheredinformation/data comprises map information/data identifying the currentlocation of the item. In another embodiment, the gatheredinformation/data may be information/data received from a shipment/itemtracking session. In some examples, the gathered information/data mayadditionally or alternatively include audio information such that theuser computing entity may audibly indicate the location of theshipment/item. For example, the gathered information/data may includeaudio information which audibly indicates the location in transit of theshipment/item, an estimated time of arrival of the shipment item, and/orany of the other information that may be visually provided by a map in amapping application. In some embodiments, the audio information mayinclude descriptive information which audibly describes an approximatedistance (e.g., in miles or kilometers), an expected route of travel tothe destination from the location in transit of the shipment/item,traffic along the expected route, or the like.

As shown in block 1103, the user computing entity may then render thegathered information/data to illustrate the current location of theitem. In some examples rendering the gathered information/data comprisesrendering the map information/data to provide a map with a wide view ofthe location of the item.

In some examples, the user computing entity may be configured to receiveinformation/data representing the location of the shipment/item andrendering the received information/data continuously, receiveinformation/data representing the location of the shipment/item andrendering the received information/data at least once during a firsttime period, wherein the first time period comprises a range of oneminutes to five minutes, or receive information/data representing thelocation of the shipment/item and rendering the receivedinformation/data at least once during a second time period, wherein thesecond time period comprises a range of five minutes to fifteen minutes.

FIG. 11B illustrates a flowchart of additional steps performed forproviding information/data indicative of the current location of ashipment/item to a shipment/item recipient/user. Beginning with block1111, the user computing entity 117 receives a first information/dataupdate comprising map data.

As shown in block 1112, the user computing entity may then render thefirst information/data update to provide a map with a moderate view ofthe location of the item.

As shown in block 1113, the user computing entity 117 may then receive asecond information/data update comprising map data.

As shown in block 1114, the user computing entity may then render thesecond information/data update to provide a map with a close view of thelocation of the item. In one embodiment, the map information/datacomprises a first icon, the first information/data update comprises asecond icon, and the second information/data update comprises a thirdicon. The first icon may then be rendered in a first size on the mapwith a wide view of the location of the item. The second icon secondicon may be rendered in a second size on the map with a moderate view ofthe location of the item, where the second size provides a more specificlocation than the first size. The third icon may be rendered in a thirdsize on the map with a close view of the location of the item, whereinthe third size provides a more specific location than the second size.

FIG. 11C illustrates a flowchart of additional steps performed forinteracting with a shipment/item recipient/user. Beginning with block1121, the user computing entity 117 receives a delivery action requestfrom the user, wherein the delivery action request indicates a desireduser change to the shipment/item delivery

As shown in blocks 1122-1125, the desired user change may comprise oneor more of a user selection to intercept the delivery vehicle to acceptdelivery of the item, a user selection of a new delivery address for theitem, a user selection to accept delivery of the shipment/item at aretail location, or a user selection to accept delivery of theshipment/item at an access point.

As shown in block 1126, the user computing entity may then transmit thedelivery action request to the carrier computing entity 110.

As shown in block 1127, the user computing entity may then optionallyreceive an indication that the delivery action request has been grantedfrom the carrier computing entity 110.

Conclusion

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

Although the above embodiments are described by associating the locationof a vehicle 100 with the location of a shipment/item, in variousembodiments, the location of a mobile computing entity 105 (e.g.,carried by a delivery vehicle operator) is associated with theshipment/item, such that the location of the mobile computing entity 105is used as a proxy for the location of the shipment/item.

Moreover, in various embodiments, various computing entities may beconfigured to only provide the shipment/item tracking session during aparticular portion of a transportation between the origin and thedestination for a shipment. For example, the shipment/item trackingsession may be made available to shipment/item recipients (users) onlyduring the “last leg” of the transportation process, during which theshipment/item will be delivered from a carrier facility to destinationlocation. However, in various embodiments, the shipment/item trackingsession may be made available during one or more portions of thetransportation process. For example, the shipment/item tracking sessionmay be initially generated when a carrier first receives a shipment/item(e.g., at a shipment/item origin) and the shipment/item tracking sessionmay be provided to the recipient/user such that the recipient/user maytrack the location of the shipment/item during the entire transportationprocess until the shipment/item is delivered to the destinationlocation.

1. A method for using a user device to track movement of an item duringdelivery, the method comprising: receiving, from a server, access to anitem tracking session regarding the item; gathering, from the server,data representing a current location of the item; rendering the gathereddata to illustrate the current location of the item; receiving adelivery action request from the user, wherein the delivery actionrequest indicates a desired user change to the item delivery; andtransmitting the delivery action request to the server.
 2. The method ofclaim 1, wherein the gathered data comprises map data identifying thecurrent location of the item.
 3. The method of claim 2, whereinrendering the gathered data comprises displaying, on a user interface, amap with a wide view of the location of the item.
 4. The method of claim3, further comprising: receiving a first data update comprising mapdata; rendering the first data update to provide a map with a moderateview of the location of the item; receiving a second data updatecomprising map data; and rendering the second data update to provide amap with a close view of the location of the item.
 5. The method ofclaim 4, wherein the map data comprises a first icon, the first dataupdate comprises a second icon, and the second data update comprises athird icon, and wherein rendering the gathered data comprises: renderingthe first icon in a first size on the map with the first view of thelocation of the item; rendering the second icon in a second size on themap with the second view of the location of the item, wherein the secondsize provides a more specific location than the first size; andrendering the third icon in a third size on the map with the third viewof the location of the item, wherein the third size provides a morespecific location than the second size.
 6. The method of claim 1,wherein the steps of gathering the data representing the currentlocation and rendering the received data comprise: gathering the datarepresenting the current location of the item and rendering the receiveddata continuously; gathering the data representing the current locationof the item and rendering the received data at least once during a firsttime period, wherein the first time period comprises a range of oneminutes to five minutes; or gathering the data representing the currentlocation of the item and rendering the received data at least onceduring a second time period, wherein the second time period comprises arange of five minutes to fifteen minutes.
 7. The method of claim 1,wherein receiving access to the item tracking session comprisesreceiving a map available notification from the server, wherein the mapavailable notification comprises a map access link, and wherein themethod further comprises: receiving a user selection of the map accesslink, wherein receiving the data representing the current location ofthe item from the server comprises receiving map data in response to theuser selection of the map access link from the server.
 8. The method ofclaim 7, wherein the map available notification comprises an email, ashort message service (SMS) transmission, or a notification within auser delivery profile.
 9. The method of claim 1, wherein the desireduser change comprises one or more of: a request to intercept thedelivery vehicle to accept delivery of the item; an indication of a newdelivery address for the item; a request to accept delivery of the itemat a retail location; or a request to accept delivery of the item at anaccess point.
 10. The method of claim 1, further comprising receiving,from the server, an indication that the delivery action request has beengranted.
 11. An apparatus to track movement of an item during deliverycomprising at least one processor and at least one memory includingprogram code, the at least one memory and the program code configuredto, with the processor, cause the apparatus to at least: receive, from aserver, access to an item tracking session regarding the item; gather,from the server, data representing a current location of the item;render the gathered data to illustrate the current location of the item;receive a delivery action request from the user, wherein the deliveryaction request indicates a desired user change to the item delivery; andtransmit the delivery action request to the server.
 12. The apparatus ofclaim 11, wherein the gathered data comprises map data identifying thecurrent location of the item.
 13. The apparatus of claim 12, wherein torender the gathered data the at least one memory and the program codemay be further configured to, with the processor, cause the apparatus torender the map data to provide a map with a wide view of the location ofthe item.
 14. The apparatus of claim 13, wherein the at least one memoryand the program code may be further configured to, with the processor,cause the apparatus to: receive a first data update comprising map data;render the first data update to provide a map with a moderate view ofthe location of the item; receive a second data update comprising mapdata; and render the second data update to provide a map with a closeview of the location of the item.
 15. The apparatus of claim 14, whereinthe map data comprises a first icon, the first data update comprises asecond icon, and the second data update comprises a third icon; whereinthe first icon is rendered in a first size on the map with a wide viewof the location of the item; wherein the second icon is rendered in asecond size on the map with a moderate view of the location of the item,wherein the second size provides a more specific location than the firstsize; and wherein the third icon is rendered in a third size on the mapwith a close view of the location of the item, wherein the third sizeprovides a more specific location than the second size.
 16. Theapparatus of claim 11, wherein the at least one memory and the programcode may be further configured to, with the processor, cause theapparatus to: receive data representing the location of the item andrendering the received data continuously; receive data representing thelocation of the item and rendering the received data at least onceduring a first time period, wherein the first time period comprises arange of one minutes to five minutes; or receive data representing thelocation of the item and rendering the received data at least onceduring a second time period, wherein the second time period comprises arange of five minutes to fifteen minutes.
 17. The apparatus of claim 11,wherein to receive access to the item tracking session the at least onememory and the program code may be further configured to, with theprocessor, cause the apparatus to receive a map available notificationfrom the server, wherein the map available notification comprises a mapaccess link; wherein the at least one memory and the program code may befurther configured to, with the processor, cause the apparatus to:receive a user selection of the map access link; and receive map data inresponse to the user selection of the map access link from the server.18. The apparatus of claim 17, wherein the map available notification isreceived as one or more of an email, a short message service, or anotification in a user delivery profile.
 19. The apparatus of claim 11,wherein the desired user change comprises one or more of: a userselection to intercept the delivery vehicle to accept delivery of theitem; a user selection of a new delivery address for the item; a userselection to accept delivery of the item at a retail location; or a userselection to accept delivery of the item at an access point.
 20. Theapparatus of claim 11, wherein the at least one memory and the programcode may be further configured to, with the processor, cause theapparatus to receive an indication that the delivery action request hasbeen granted from the server.
 21. A non-transitory computer-readablestorage medium for tracking movement of an item during delivery, thenon-transitory computer-readable storage medium storing program codeinstructions that, when executed, cause a computing device to: receive,from a server, access to an item tracking session regarding the item;gather, from the server, data representing a current location of theitem; render the gathered data to illustrate the current location of theitem; receive a delivery action request from the user, wherein thedelivery action request indicates a desired user change to the itemdelivery; and transmit the delivery action request to the server.